//package com.geralt.im.gui;
//
//import geralt.im.watcher.Observer;
//
//import java.awt.event.ActionEvent;
//import java.awt.event.ActionListener;
//import java.awt.event.WindowAdapter;
//import java.awt.event.WindowEvent;
//
//import javax.swing.JButton;
//import javax.swing.JFrame;
//import javax.swing.JLabel;
//import javax.swing.JOptionPane;
//import javax.swing.JTextField;
//
//import com.geralt.im.commandparse.IParser;
//import com.geralt.im.commandparse.impl.RpParser;
//import com.geralt.im.controller.Controller;
//import com.geralt.im.entrance.Entrance;
//import com.geralt.im.model.Customer;
//import com.geralt.im.protocol.Request;
//import com.geralt.im.protocol.Response;
//
//public class LoginGUI extends JFrame implements Observer{
//
////	public JFrame frame;
//	public JTextField textField;
//	public JButton loginButton;
//
//	/**
//	 * Create the application.
//	 */
//	public LoginGUI() {
//		initialize();
//	}
//
//	/**
//	 * Initialize the contents of the 
//	 */
//	private void initialize() {
////		frame = new JFrame();
//		setBounds(100, 100, 200, 300);
//		setDefaultCloseOperation(EXIT_ON_CLOSE);
//		getContentPane().setLayout(null);
//
//		textField = new JTextField();
//		textField.setBounds(45, 60, 100, 20);
//		getContentPane().add(textField);
//		textField.setColumns(10);
//
//		loginButton = new JButton("login");
//		
//		loginButton.setBounds(45, 130, 100, 23);
//		getContentPane().add(loginButton);
//
//		JLabel lblNewLabel = new JLabel("username");
//		lblNewLabel.setBounds(45, 36, 59, 14);
//		getContentPane().add(lblNewLabel);
//		addListener();
//	}
//
//	
//	public void addListener(){
//		addWindowListener(onLoginClosingAdapter);
//		loginButton.addActionListener(loginBtnListener);
//	}
//	
//	
//	ActionListener loginBtnListener = new ActionListener() {
//		public void actionPerformed(ActionEvent e) {
//			Request request = new Request();
//			request.setType("LOGIN");
//			Entrance.customer = new Customer();
//			Entrance.customer.setId(textField.getText());
//			request.getParameter().put("LOGIN", Entrance.customer);
//			Entrance.client.getClientRunner().write(request);
//			Response response;
//			try {
//				response = Entrance.client.getClientRunner().read();
//				new Controller().excute(response);
//			} catch (Exception e1) {
//				JOptionPane.showMessageDialog(null, "Can't connect to Server");
//			} 
//		}
//	};
//	
//	
//	
//	WindowAdapter onLoginClosingAdapter =new WindowAdapter() {
//		public void windowClosing(WindowEvent e) {
//			Request request = new Request();
//			request.setType("EXIT");
//			Customer customer = new Customer();
//			customer.setId(null);
//			System.out.println(request.toString());
//			request.getParameter().put("LOGIN", customer);
//			Entrance.client.getClientRunner().write(request);
//			setDefaultCloseOperation(EXIT_ON_CLOSE);
//			
//		}
//	};
//	
//	@Override
//	public void update(int type, Object object) {
//		if(Entrance.onLogin==true)
//			return;
//		switch (type) {
//		case 1:
//			
//			break;
//		case 4:
//			setVisible(false);
//			Entrance.onLogin=true;
//			Entrance.client.start();
//			IParser parser = RpParser.getInstance();
//			break;
//		default:
//			break;
//		}
//	}
//}
